草庐IT

javascript - X 秒后执行 JavaScript

全部标签

javascript - 基于索引数组过滤数组

首先,如果它是重复的,我深表歉意(我搜索过但没有找到这个简单的例子......),但我想根据arr2arr1的元素:arr1=[33,66,77,8,99]arr2=[2,0,3]我正在使用underscore.js但未检索到0索引(似乎被认为是false):res=_.filter(arr1,function(value,index){if(_.contains(arr2,index)){returnindex;}});哪个返回:#[77,8]我该如何解决这个问题,是否有更简单的方法来使用索引数组进行过滤?我期待以下结果:#[77,33,8] 最佳答案

javascript - 为什么 let 语句的行为与 var 如此不同?

我知道let是声明block作用域局部变量,但为什么它不像var那样支持重新声明和提升?这个限制的设计目的是什么?(function(){'usestrict';alert(a);//undefinedvara;})();(function(){'usestrict';alert(a);//errorleta;})();(function(){'usestrict';vara;vara;alert(a);//undefined})();(function(){'usestrict';leta;leta;//erroralert(a);})(); 最佳答案

Javascript:未定义为函数参数

在此page,它显示了一些示例代码,其中包含以下行:varSubject=(function(window,undefined){作为函数参数的undefined是什么? 最佳答案 这用于防止在非严格模式下覆盖undefined的值。在非严格模式下,undefined的值可以通过为其分配其他值来覆盖。undefined=true;//Oranyothervalue因此,使用undefined的值将不会按预期工作。在严格模式下,undefined是只读的,给它赋值会抛出错误。在代码中,没有传递最后一个参数的值,所以它会隐式传递为und

javascript - 检测下拉列表是否为多选

我有一个通用的下拉列表填充脚本,它使用从各种jquery调用返回的选项填充select。它目前用于单一选择。我需要向它添加填充多选的能力,它按原样工作,但我不想包括初始*Pleasechoose*选项。我正在寻找jQuery或纯Javascript解决方案。if(dropdown!=null){varregList=document.getElementById(dropdown);regList.options.length=0;varopt=document.createElement("option");//**ifthedropdownis*not*amultiple="mul

javascript - 为什么我们在此表达式中使用 _ str.replace(/[\W_]/g, '' ).toLowerCase();我们也可以使用/[\W]/g 但为什么我们要使用下划线呢?

这是一个javascript问题。我在freecodecamp上解决回文问题。让我在这里写下完整的代码:functionpalindrome(str){varnormalizedStr=str.replace(/[\W_]/g,'').toLowerCase();varreverseStr=normalizedStr.split('').reverse().join('');returnnormalizedStr===reverseStr;} 最佳答案 \W元字符用于查找非单词字符。单词字符是a-z、A-Z、0-9中的一个字符,包括

javascript - 与 boolean 值相乘是否安全(并且更好)?

我有一段代码有很多if和elseif。我现在只是想,在乘法中,true的计算结果为1,false的计算结果为0。用:if(!this._isFetched('studentInfoFetched')){tempAddedTime+=1;estimatedTimePerStudent+=0.04+0.2;}if(formInputValues.student_expiration){tempAddedTime+=(!this._isFetched('studentExpirationFetched'))?14:0;estimatedTimePerStudent+=1;}对于:tempAd

javascript - 是否有可能通过 AJAX 被黑客入侵?

好的,所以今天我在构建系统上有很好的经验。有人“破解”了所有内容并说这是一个ajax问题。这是他对我说的:youarerelyingonAJAXwhenIhaveaccesstouser'sbrowserIhaveaccesstoallAJAXfunctionsyouwroteforhimsoIcandoanythingwritteninyourjavascriptpretendingtobethatuser这绝对是荒谬的——有人怎么能通过ajax访问用户脚本呢?我也在服务器上使用节点,但无法意识到问题出在哪里..ajax的例子:vartransfer_data={id:jQuery(

javascript - moment.js startOf 问题

我正在尝试使用moment.js获取一天(距今天几天)的开始和结束时间。这是我的代码:vartoday=moment();varday=today.add(-5,"days");varstartOfDay=day.startOf("day");varendOfDay=day.endOf("day");console.log("today"+today.format());console.log("day"+day.format());console.log("start"+startOfDay.format());console.log("end"+endOfDay.format())

javascript - 纯 Javascript 中的 Angular 2 路由(无 Typescript)

所以我一直在努力让路由器在不使用Typescript的情况下在Angular2中工作。除了一些使用装饰器函数的typescript编译的javascript之外,我似乎找不到任何示例。是否可以将Angular2Router与纯Javascript一起使用? 最佳答案 您可以使用router.config()指定路由列表的方法。这是一个完全用ES5编写的示例(参见thisplunk):varApp=Component({selector:'my-app',directives:[RouterOutlet,RouterLink],tem

javascript - 如何在 JavaScript 中加载外部文件?

我正在编写一个脚本,您可以在其中添加和删除语言下拉列表。我让它工作了,但我的问题是是否有一种方法可以将代码的选择标记部分外部化,因为我会有超过100个选项并在单击链接时将其加载到JavaScript中。我不想在脚本中有100个选项标签。在PHP方面,我使用include语句来加载我的选项列表。这就是我的问题所在。$(function(){varscntDiv=$('#container');vari=$('#containerp').size()+1;$('#addScnt').live('click',function(){$('IDONTWANTTOHAVE100OPTIONTAG